}
process() {
- throw new Error('Not implemented');
+ throw new GObject.NotImplementedError(`process in ${this.constructor.name}`);
}
runTask() {
// This can be overridden by a subclass, or by the createIcon
// parameter to _init()
createIcon(size) {
- throw new Error('no implementation of createIcon in ' + this);
+ throw new GObject.NotImplementedError(`createIcon in ${this.constructor.name}`);
}
setIconSize(size) {
animatePulse(animationDirection) {
if (animationDirection != AnimationDirection.IN)
- throw new Error("Pulse animation only implements 'in' animation direction");
+ throw new GObject.NotImplementedError("Pulse animation only implements " +
+ "'in' animation direction");
this._cancelAnimation();
}
_getSlide() {
- throw new Error('getSlide() must be overridden');
+ throw new GObject.NotImplementedError(`_getSlide in ${this.constructor.name}`);
}
_updateSlide() {
}
_keyPressHandler(keysym, action) {
- throw new Error('Not implemented');
+ throw new GObject.NotImplementedError(`_keyPressHandler in ${this.constructor.name}`);
}
_keyPressEvent(actor, event) {
// (optionally) for each row in @layout.rows. This method is
// intended to be called by subclasses.
_computeRowSizes(layout) {
- throw new Error('_computeRowSizes not implemented');
+ throw new GObject.NotImplementedError(`_computeRowSizes in ${this.constructor.name}`);
}
// Compute strategy-specific window slots for each window in
// * gridHeight - The totial height used by the grid, unscaled, unspaced.
// * rows - A list of rows, which should be instantiated by _newRow.
computeLayout(windows, layout) {
- throw new Error('computeLayout not implemented');
+ throw new GObject.NotImplementedError(`computeLayout in ${this.constructor.name}`);
}
// Given @layout, compute the overall scale and space of the layout.